# Docker image for springboot file run
# 使用多阶段构建来优化镜像大小
# 第一阶段：构建阶段
FROM openjdk:8 AS builder

# 设置工作目录
WORKDIR /app

# 复制项目文件到工作目录
# 假设 Dockerfile 位于项目根目录，target 目录下包含打包的 JAR 文件
COPY target/*.jar app.jar

# 第二阶段：运行阶段
FROM openjdk:8-jre-slim

# 添加 Maintainer 信息
LABEL author="moxiaoli"

# 暴露端口
EXPOSE 8080

# 设置工作目录
WORKDIR /app

# 从构建阶段复制app.jar
COPY --from=builder /app/app.jar .

# 配置容器启动后执行的命令
# 为了提高安全性，考虑需求后决定保留使用 /dev/urandom
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app/app.jar"]

# 关于临时目录的说明：由于使用了slim镜像，/tmp目录已经是临时目录了，无需再通过VOLUME指定。

